home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / gfx / misc / gnuplot-3.7src.lha / gnuplot-3.7src / gnuplot-3.7.lha / gnuplot-3.7 / ansichek.h < prev    next >
C/C++ Source or Header  |  1998-11-20  |  3KB  |  93 lines

  1. /* $Id: ansichek.h,v 1.14 1998/06/18 14:55:01 ddenholm Exp $ */
  2.  
  3. /* GNUPLOT - ansichek.h */
  4.  
  5. /*[
  6.  * Copyright 1986 - 1993, 1998   Thomas Williams, Colin Kelley
  7.  *
  8.  * Permission to use, copy, and distribute this software and its
  9.  * documentation for any purpose with or without fee is hereby granted,
  10.  * provided that the above copyright notice appear in all copies and
  11.  * that both that copyright notice and this permission notice appear
  12.  * in supporting documentation.
  13.  *
  14.  * Permission to modify the software is granted, but not the right to
  15.  * distribute the complete modified source code.  Modifications are to
  16.  * be distributed as patches to the released version.  Permission to
  17.  * distribute binaries produced by compiling modified sources is granted,
  18.  * provided you
  19.  *   1. distribute the corresponding source modifications from the
  20.  *    released version in the form of a patch file along with the binaries,
  21.  *   2. add special version identification to distinguish your version
  22.  *    in addition to the base release version number,
  23.  *   3. provide your name and address as the primary contact for the
  24.  *    support of your modified version, and
  25.  *   4. retain our contact information in regard to use of the base
  26.  *    software.
  27.  * Permission to distribute the released version of the source code along
  28.  * with corresponding source modifications in the form of a patch file is
  29.  * granted with same provisions 2 through 4 for binary distributions.
  30.  *
  31.  * This software is provided "as is" without express or implied warranty
  32.  * to the extent permitted by applicable law.
  33. ]*/
  34.  
  35.  
  36. /* figure out if we can handle ANSI prototypes
  37.  * We invent and use ANSI_C rather than using __STDC__ directly
  38.  * because some compilers (eg MS VC++ 4.1) switch off __STDC__
  39.  * when extensions are enabled, but if extensions are disabled,
  40.  * the standard headers cause compile errors. We can -DANSI_C
  41.  * but -D__STDC__ might confuse headers
  42.  */
  43.  
  44. #ifndef ANSI_CHECK_H
  45. # define ANSI_CHECK_H
  46.  
  47. # ifndef HAVE_CONFIG_H
  48. /* Only relevant for systems which don't run configure */
  49.  
  50. #  if defined(__STDC__) && __STDC__
  51. #   ifndef ANSI_C
  52. #    define ANSI_C
  53. #   endif
  54. #  endif /* __STDC__ */
  55.  
  56. /* are all these compiler tests necessary ? - can the makefiles not
  57.  * just set ANSI_C ?
  58.  */
  59.  
  60. #  if defined(ANSI_C) || defined(__TURBOC__) || defined (__PUREC__) || defined (__ZTC__) || defined (_MSC_VER) || (defined(OSK) && defined(_ANSI_EXT))
  61. #   ifndef PROTOTYPES
  62. #    define PROTOTYPES
  63. #   endif
  64. #   ifndef HAVE_STRINGIZE
  65. #    ifndef VAXC       /* not quite ANSI_C */
  66. #     define HAVE_STRINGIZE
  67. #    endif
  68. #   endif
  69. #  endif /* ANSI_C ... */
  70.  
  71. #  ifndef ANSI_C
  72. #   define const
  73. #  endif
  74.  
  75. # endif /* !HAVE_CONFIG_H */
  76.  
  77. /* used to be __P but it was just too difficult to guess whether
  78.  * standard headers define it. It's not as if the defn is
  79.  * particularly difficult to do ourselves...
  80.  */
  81. # ifdef PROTOTYPES
  82. #  define __PROTO(proto) proto
  83. # else
  84. #  define __PROTO(proto) ()
  85. # endif
  86.  
  87. /* generic pointer type. For old compilers this has to be changed to char *,
  88.  * but I don't know if there are any CC's that support void and not void *
  89.  */
  90. #  define generic void
  91.  
  92. #endif /* ANSI_CHECK_H */
  93.